home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------
- ; .ss.
- ; `²²'
- ; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
- ; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
- ; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
- ; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
- ; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
- ; .sS²°$$$²²°"' d²°'
- ; .$$² .$$'
- ; $$$.,d$$'
- ; `²S$$S²'
- ;------------------------------------------------------------------------------
- ; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
- ;------------------------------------------------------------------------------
- ; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
- ;------------------------------------------------------------------------------
-
- Boolean BOOLEAN001
- Integer INTEGER001
- Integer INTEGER002
- Integer INTEGER003
- Integer INTEGER004
- Integer INTEGER005
- Integer INTEGER006
- Integer INTEGER007
- Integer INTEGER008
- Integer INTEGER009
- Integer INTEGER010
- Integer INTEGER011
- Integer INTEGER012
- Integer INTEGER013
- Integer INTEGER014
- String STRING001
- String STRING002
- String STRING003
- String STRING004
- String STRING005
- String STRING006
- String STRING007
- String STRING008
- String STRING009
- String STRING010
- String STRING011
- Declare Procedure PROC001()
-
- ;------------------------------------------------------------------------------
-
- GetToken INTEGER001
- FOpen 1, PPEPath() + "LOGIN.CNF", 2, 0
- FGet 1, INTEGER002
- FGet 1, INTEGER003
- FGet 1, INTEGER004
- FGet 1, INTEGER005
- FGet 1, INTEGER006
- FGet 1, INTEGER009
- FGet 1, INTEGER010
- FGet 1, INTEGER011
- FGet 1, STRING001
- FGet 1, INTEGER012
- FGet 1, INTEGER013
- FGet 1, INTEGER014
- FGet 1, STRING004
- FGet 1, STRING005
- FGet 1, STRING002
- FGet 1, STRING007
- FGet 1, STRING006
- FGet 1, STRING008
- FGet 1, STRING009
- FGet 1, STRING011
- FClose 1
- If (INTEGER001 == 76) Then
- AnsiPos INTEGER002, INTEGER003
- Print STRING008
- Delay INTEGER012
- AnsiPos INTEGER002, INTEGER003
- Print STRING009
- Endif
- If (INTEGER001 == 259) Then
- Cls
- DispFile PPEPath() + "LOGIN.PCB", 0
- AnsiPos INTEGER002, INTEGER003
- Print STRING007
- AnsiPos INTEGER004, INTEGER005
- Endif
- If (INTEGER001 == 260) Then
- KbdStuff Chr(13)
- Endif
- If (INTEGER001 == 148) Then
- GetUser
- AnsiPos INTEGER010, INTEGER011
- Print STRING001 + "@CITY@"
- AnsiPos INTEGER006, INTEGER009
- Print " "
- If (OnLocal() == 0) STRING011 = "N"
- STRING010 = U_Pwd
- If (STRING011 == "N") Then
- AnsiPos INTEGER002, INTEGER003
- Print STRING009
- AnsiPos INTEGER002, INTEGER003
- Print STRING006
- SPrintLn "H.--[ Local Window ]-------------."
- SPrintLn "| Password: |"
- SPrintLn "| Usr inpt: |"
- SPrintLn "| Security: |"
- SPrintLn "`-------------------------------'"
- SPrint "3H" + U_Pwd
- SPrint "3H" + String(U_Sec)
- AnsiPos INTEGER006, INTEGER009
- PROC001()
- Endif
- KbdStuff STRING010
- Endif
- If (INTEGER001 == 92) Then
- AnsiPos INTEGER002, INTEGER003
- Print STRING009
- AnsiPos INTEGER002, INTEGER003
- Print STRING002
- Delay INTEGER012
- AnsiPos INTEGER002, INTEGER003
- Print STRING009
- Endif
- If (INTEGER001 == 53) Then
- AnsiPos INTEGER013, INTEGER014
- Print STRING005
- BOOLEAN001 = 1
- While (STRING003 <> Chr(13)) Do
- STRING003 = ""
- While (STRING003 == "") Do
- STRING003 = Inkey()
- EndWhile
- AnsiPos INTEGER013, INTEGER014
- If (STRING003 == "RIGHT") Print STRING004
- If (STRING003 == "LEFT") Print STRING005
- If (STRING003 == "LEFT") BOOLEAN001 = 1
- If (STRING003 == "RIGHT") BOOLEAN001 = 0
- EndWhile
- If (BOOLEAN001 == 1) KbdStuff "C" + Chr(13)
- If (BOOLEAN001 == 0) KbdStuff "R" + Chr(13)
- Endif
- End
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC001()
-
- Integer INTEGER015
- Integer INTEGER016
- String STRING012
-
- STRING010 = ""
- INTEGER015 = GetX()
- While (STRING012 <> Chr(13)) Do
- STRING012 = ""
- While (STRING012 == "") Do
- STRING012 = Upper(Inkey())
- If (Len(STRING012) > 1) STRING012 = ""
- If ((INTEGER016 == 0) && (STRING012 == Chr(13))) STRING012 = ""
- If (INTEGER016 == 12) If (STRING012 <> Chr(8)) If (STRING012 <> Chr(13)) STRING012 = ""
- EndWhile
- If ((STRING012 == Chr(8)) && (INTEGER016 <> 0)) Then
- Dec INTEGER016
- STRING010 = Left(STRING010, Len(STRING010) - 1)
- ElseIf ((STRING012 <> Chr(13)) && (STRING012 <> Chr(8))) Then
- STRING010 = STRING010 + STRING012
- Inc INTEGER016
- Endif
- If (STRING012 == Chr(8)) Then
- If (GetX() > INTEGER015) Then
- INTEGER007 = GetX()
- INTEGER008 = GetY()
- SPrint "3H" + STRING010 + " "
- SPrint "" + String(INTEGER008) + ";" + String(INTEGER007) + "H"
- Print Chr(8) + " " + Chr(8)
- Endif
- Continue
- Endif
- If (STRING012 <> Chr(13)) Then
- INTEGER007 = GetX()
- INTEGER008 = GetY()
- SPrint "3H" + STRING010
- SPrint "" + String(INTEGER008) + ";" + String(INTEGER007) + "H"
- Print "."
- Endif
- EndWhile
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
- ;
- ; Usage report (before postprocessing)
- ;
- ; ■ Statements used :
- ;
- ; 1 End
- ; 1 Cls
- ; 22 Goto
- ; 20 Let
- ; 15 Print
- ; 28 If
- ; 1 DispFile
- ; 1 FOpen
- ; 1 FClose
- ; 20 FGet
- ; 1 GetUser
- ; 2 Delay
- ; 1 Inc
- ; 1 Dec
- ; 1 GetToken
- ; 4 KbdStuff
- ; 14 AnsiPos
- ; 6 SPrint
- ; 5 SPrintLn
- ; 1 EndProc
- ;
- ;
- ; ■ Functions used :
- ;
- ; 21 +
- ; 1 -
- ; 21 ==
- ; 8 <>
- ; 2 >
- ; 16 !
- ; 3 &&
- ; 2 Len(
- ; 1 Upper()
- ; 1 Left()
- ; 15 Chr()
- ; 2 Inkey()
- ; 5 String()
- ; 2 PPEPath()
- ; 1 OnLocal()
- ; 4 GetX()
- ; 2 GetY()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Analysis flags : H
- ;
- ; H - Read Password or Password History ■ 5
- ; Program is reading the user's password or last password history
- ; This may be ok for a password manager, but it is very suspect. Check!
- ; ■ Search for : U_PWDHIST, U_PWD
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Postprocessing report
- ;
- ; 0 For/Next
- ; 4 While/EndWhile
- ; 12 If/Then or If/Then/Else
- ; 0 Select Case
- ;
- ;------------------------------------------------------------------------------
- ; AEGiS Corp - Break the routines, code against the machines!
- ;------------------------------------------------------------------------------
-